#ifndef __IComponentServer_H__
#define __IComponentServer_H__

#include "compfwk/compfwk.h"

namespace compfwk
{
    /**
     * \brief Interface that models a component server
     * 
     * It allows the creation of components of a specified type
     */
    class IComponentServer
    {
    public:
        //! Create a component of the specified type of this server
        //! and for the entity specified by the id passed as argument
        virtual bool New( int a_eid ) = 0;

        //! Returns the type of the components this server creates as a string
        virtual const CString& GetType( void ) const = 0;
    };
}
#endif